package com.app.service.article;

import com.app.domain.bo.article.TagBo;
import com.app.domain.page.Page;
import com.app.domain.po.article.TagPo;
import com.app.domain.vo.article.TagVo;
import com.baomidou.mybatisplus.extension.service.IService;

import java.util.List;

/**
 * 标签方法
 */
public interface TagService extends IService<TagPo> {

    /**
     * 标签列表
     *
     * @param bo 入参
     */
    Page<TagVo> lists(TagBo bo);

    /**
     * 添加标签 - 单个
     *
     * @param bo 入参
     */
    void saveOne(TagBo bo);

    /**
     * 批量添加标签
     *
     * @param names 标签名称
     */
    void batchSave(List<String> names);

    /**
     * 标签详情
     *
     * @param tagId 标签ID
     */
    TagPo details(Long tagId);

    /**
     * 修改标签
     *
     * @param bo 入参
     */
    void updateOne(TagBo bo);

    /**
     * 删除标签
     *
     * @param tagId 标签ID
     */
    void deleteOne(Long tagId);

}